package com.impetus.project.skilltest.client.stub;

import java.util.List;

import com.google.gwt.user.client.rpc.RemoteService;
import com.google.gwt.user.client.rpc.RemoteServiceRelativePath;
import com.impetus.project.skilltest.common.SkillTestException;
import com.impetus.project.skilltest.common.dataobject.Candidate;
import com.impetus.project.skilltest.common.dataobject.Question;
import com.impetus.project.skilltest.common.dataobject.ScheduledTest;
import com.impetus.project.skilltest.common.dataobject.TestTransData;

@RemoteServiceRelativePath("test-service")
public interface TestService extends RemoteService
{
	public List<ScheduledTest> getScheduledTests(Candidate candidate)
	throws SkillTestException;
	
	
	public Question getNextQuestion(Candidate candidate, ScheduledTest scheduledTest)
	throws SkillTestException;
	
	
	public TestTransData evaluateAndSaveProgrammingQuestion(TestTransData transData)
	throws SkillTestException;
	
	
	public TestTransData evaluateProgrammingQuestion(TestTransData transData)
	throws SkillTestException;
	
	public void saveUpdateScheduledTest(ScheduledTest scheduledTest)
	throws SkillTestException;
	
	public List<ScheduledTest> getScheduledTestByTestId ( String testId )
	throws SkillTestException;
}
